package com.qhgrain.api.comm.datadictionary.service;

import java.util.List;
import java.util.Map;

import com.github.pagehelper.Page;
import com.qhgrain.api.comm.datadictionary.entity.DataDictionary;

public interface IDataDictionaryService {

	/**
	 *	新增一条数据字典
	 * @param dicInfo
	 */
	void insertDic(DataDictionary dataDictionary);

	/**
	 * 获取指定页的字典数据
	 * @param pageNo
	 * @param pageSize
	 * @param conditionMap
	 * @return Page<DataDictionary>
	 */
	public Page<DataDictionary> queryListForPage(int pageNo, int pageSize,Map<String,String>conditionMap);

	/**
	 * 根据数据字典主键获取字典信息
	 * @param dicId
	 * @return
	 */
	DataDictionary getDataDicById(String dicId);

	/**
	 * 根据主键删除字典信息
	 * @param dicId
	 */
	void deleteById(String dicId);

	/**
	 * 更新字典数据信息,对象不为null的属性将被更新
	 * @param dataDictionary
	 */
	void update(DataDictionary dataDictionary);


	/**
	 * 根据字典标识获取字典信息
	 * @param dcCode
	 * @return
	 */
	DataDictionary getDataDicInfoByCode(String dcCode);

	/**
	 * 获取指定系统、父字典的直接下一级节点
	 * @param sysCode
	 * @param dcPcode
	 * @return
	 */
	List<DataDictionary> getChildDataDic(String sysCode, String dcPcode);

	/**
	 * 获取系统列表
	 * @return List<Map<String,String>>
	 */
	List<Map<String,String>> getSystemList();
	/**
	 * 
	 * 2016年6月14日 上午9:32:04  
	 * @tags 批量修改状态 
	 * @author zhaoyq
	 */
	public void updateStaus(List<String> ids, String status);
	
	
}
